﻿
// **************************************************************************
//    Class Created by Mick Doherty (Dotnetrix) March 2010
//    http://dotnetrix.co.uk/
//
//    ...for GlassUI (an AeroGlass UI Library)
//    http://glassui.codeplex.com/
// **************************************************************************

using System;
using System.ComponentModel;
using System.Drawing.Design;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using GlassUI.Design;

namespace GlassUI
{
    [Flags]
    [Editor(typeof(RoundCornersEditor), typeof(UITypeEditor))]
    public enum Corners
    {
        None = 0,
        TopLeft = 1,
        TopRight = 2,
        BottomLeft = 4,
        BottomRight = 8,
        All = TopLeft | TopRight | BottomLeft | BottomRight
    }

    public enum ControlState
    {
        [Browsable(false)]
        None,
        Normal,
        Hot,
        Pressed,
        Disabled,
        Focused
    }

    [StructLayout(LayoutKind.Sequential)]
    public class ListViewGroupItem
    {
        private string headerText, footerText;
        private HorizontalAlignment headerTextAlign, footerTextAlign;
        private int groupID;
        private ListViewItemStates state;

        public string HeaderText
        {
            get { return headerText; }
            set { headerText = value; }
        }

        public string FooterText
        {
            get { return footerText; }
            set { footerText = value; }
        }

        public HorizontalAlignment HeaderTextAlign
        {
            get { return headerTextAlign; }
            set { headerTextAlign = value; }
        }

        public HorizontalAlignment FooterTextAlign
        {
            get { return footerTextAlign; }
            set { footerTextAlign = value; }
        }

        public int GroupId
        {
            get { return groupID; }
            set { groupID = value; }
        }

        public ListViewItemStates State
        {
            get { return state; }
            set { state = value; }
        }
    }


}
